Skip to content

refactor: switch to rapids-artifact-name for consistent artifact naming#1411

Merged
rapids-bot[bot] merged 7 commits into
NVIDIA:mainfrom
gforsyth:rapids-artifact-name
Jun 11, 2026
Merged

refactor: switch to rapids-artifact-name for consistent artifact naming#1411
rapids-bot[bot] merged 7 commits into
NVIDIA:mainfrom
gforsyth:rapids-artifact-name

Conversation

@gforsyth

@gforsyth gforsyth commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

This PR swaps in rapids-artifact-name for rapids-package-name everywhere, and also removes any legacy named artifacts. All artifacts now follow the same naming convention (and that convention can be updated/expanded from a central location). Part of rapidsai/build-planning#270

@gforsyth gforsyth added non-breaking Introduces a non-breaking change improvement Improves an existing functionality labels Jun 9, 2026
@copy-pr-bot

copy-pr-bot Bot commented Jun 9, 2026

Copy link
Copy Markdown

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@gforsyth

gforsyth commented Jun 9, 2026

Copy link
Copy Markdown
Contributor Author

/ok to test

@gforsyth gforsyth force-pushed the rapids-artifact-name branch from 84e19ad to 6ed0864 Compare June 9, 2026 19:21
@gforsyth

gforsyth commented Jun 9, 2026

Copy link
Copy Markdown
Contributor Author

/ok to test

@gforsyth

gforsyth commented Jun 9, 2026

Copy link
Copy Markdown
Contributor Author

/ok to test

@gforsyth gforsyth force-pushed the rapids-artifact-name branch from 3cfa387 to 7e73e22 Compare June 10, 2026 13:17
@gforsyth

Copy link
Copy Markdown
Contributor Author

/ok to test

runs-on: linux-amd64-gpu-l4-latest-1
strategy:
matrix:
ctk: ["12.9.0"]

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bumped the ctk version here to pull in a newer container that has updated gha-tools (for rapids-artifact-name)

date: ${{ inputs.date }}
package-name: cuopt
package-type: python
publish-wheel-search-key: cuopt_wheel_python_cuopt_

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's an annoying chance of naming collisions here, where cuopt_server and cuopt have the same prefix, namely: cuopt_wheel_python_cuopt -- leave a trailing underscore here to ensure it's a cuopt wheel.

For the others, we use hyphens for the artifact names so they don't collide, e.g.

cuopt_wheel_python_cuopt_ doesn't match cuopt_wheel_python_cuopt-server or cuopt_wheel_python_cuopt-sh-client

@gforsyth

Copy link
Copy Markdown
Contributor Author

/ok to test

@gforsyth gforsyth force-pushed the rapids-artifact-name branch from 5e60576 to 9367d74 Compare June 10, 2026 17:28
@gforsyth

Copy link
Copy Markdown
Contributor Author

/ok to test

@jameslamb jameslamb marked this pull request as ready for review June 11, 2026 01:13
@jameslamb jameslamb requested a review from a team as a code owner June 11, 2026 01:13
@jameslamb jameslamb requested a review from bdice June 11, 2026 01:13
@jameslamb jameslamb removed the request for review from bdice June 11, 2026 01:14
@coderabbitai

coderabbitai Bot commented Jun 11, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: ba8261b1-c26d-4219-a890-f394e81c5cd9

📥 Commits

Reviewing files that changed from the base of the PR and between 9142298 and 9367d74.

📒 Files selected for processing (16)
  • .github/workflows/build.yaml
  • .github/workflows/self_hosted_service_test.yaml
  • ci/build_cpp.sh
  • ci/build_docs.sh
  • ci/build_python.sh
  • ci/build_wheel_cuopt.sh
  • ci/build_wheel_cuopt_server.sh
  • ci/build_wheel_cuopt_sh_client.sh
  • ci/build_wheel_libcuopt.sh
  • ci/test_cpp.sh
  • ci/test_cpp_memcheck.sh
  • ci/test_notebooks.sh
  • ci/test_python.sh
  • ci/test_self_hosted_service.sh
  • ci/test_wheel_cuopt.sh
  • ci/test_wheel_cuopt_server.sh

📝 Walkthrough

Walkthrough

This PR migrates cuopt's CI/CD scripts from using hardcoded and generic artifact identifiers to dynamically constructing artifact names via the rapids-artifact-name function. Build scripts now export RAPIDS_PACKAGE_NAME for their outputs; build and test scripts replace rapids-download-conda-from-github and rapids-download-wheels-from-github calls with rapids-download-from-github using version-aware artifact names. Workflow jobs add publish-wheel-search-key configuration, and the test service container CUDA version is bumped to 12.9.1.

Changes

Artifact Naming and Download Migration

Layer / File(s) Summary
Conda C++ build: RAPIDS_PACKAGE_NAME export
ci/build_cpp.sh
build_cpp.sh updates copyright year and introduces RAPIDS_PACKAGE_NAME export using rapids-artifact-name for conda_cpp libcuopt/cuopt artifact parameterized by RAPIDS_CUDA_VERSION.
Conda Python build: channel sourcing and RAPIDS_PACKAGE_NAME
ci/build_python.sh
build_python.sh updates CPP_CHANNEL download to use rapids-artifact-name for conda_cpp libcuopt/cuopt, and adds RAPIDS_PACKAGE_NAME export for conda_python cuopt/cuopt artifact using RAPIDS_CUDA_VERSION and RAPIDS_PY_VERSION.
Docs build: conda channel downloads via rapids-artifact-name
ci/build_docs.sh
build_docs.sh updates copyright year and migrates CPP_CHANNEL and PYTHON_CHANNEL downloads from rapids-download-conda-from-github to rapids-download-from-github using rapids-artifact-name for conda_cpp and conda_python artifacts.
Wheel C++ build: libcuopt RAPIDS_PACKAGE_NAME and download
ci/build_wheel_libcuopt.sh
build_wheel_libcuopt.sh exports RAPIDS_PACKAGE_NAME using rapids-artifact-name for wheel_cpp libcuopt/cuopt artifact parameterized by RAPIDS_CUDA_VERSION.
Wheel Python builds: cuopt, cuopt-server, cuopt-sh-client RAPIDS_PACKAGE_NAME
ci/build_wheel_cuopt.sh, ci/build_wheel_cuopt_server.sh, ci/build_wheel_cuopt_sh_client.sh
build_wheel_cuopt.sh migrates libcuopt wheelhouse download to rapids-download-from-github with rapids-artifact-name, and exports RAPIDS_PACKAGE_NAME for wheel_python cuopt artifact. build_wheel_cuopt_server.sh and build_wheel_cuopt_sh_client.sh export RAPIDS_PACKAGE_NAME for their respective pure packages using rapids-artifact-name.
Test environments: conda channel downloads via rapids-artifact-name
ci/test_cpp.sh, ci/test_cpp_memcheck.sh, ci/test_notebooks.sh, ci/test_python.sh
test_cpp.sh, test_cpp_memcheck.sh, test_notebooks.sh, and test_python.sh migrate CPP_CHANNEL and PYTHON_CHANNEL downloads from rapids-download-conda-from-github to rapids-download-from-github using rapids-artifact-name with RAPIDS_CUDA_VERSION and RAPIDS_PY_VERSION parameters. test_cpp_memcheck.sh also updates copyright year.
Test environments: wheel artifact downloads via rapids-artifact-name
ci/test_self_hosted_service.sh, ci/test_wheel_cuopt.sh, ci/test_wheel_cuopt_server.sh
test_self_hosted_service.sh, test_wheel_cuopt.sh, and test_wheel_cuopt_server.sh migrate wheel downloads from rapids-download-wheels-from-github with rapids-wheel-ctk-name-gen to rapids-download-from-github using rapids-artifact-name for libcuopt (wheel_cpp), cuopt/cuopt-server/cuopt-sh-client (wheel_python), parameterized by RAPIDS_CUDA_VERSION and RAPIDS_PY_VERSION. test_wheel_cuopt.sh also updates PIP_CONSTRAINT glob patterns to reference newly downloaded wheelhouse directories.
Workflow: publish configuration and CUDA version
.github/workflows/build.yaml, .github/workflows/self_hosted_service_test.yaml
build.yaml adds publish-wheel-search-key to four wheel-publish jobs (libcuopt, cuopt, cuopt-server, cuopt-sh-client) for artifact discovery. self_hosted_service_test.yaml bumps CUDA Toolkit matrix version from 12.9.0 to 12.9.1.

🎯 3 (Moderate) | ⏱️ ~25 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately summarizes the main change: replacing rapids-package-name with rapids-artifact-name for consistent artifact naming across the repository.
Description check ✅ Passed The description is directly related to the changeset, explaining the swap from rapids-package-name to rapids-artifact-name and removal of legacy artifacts.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

@gforsyth

Copy link
Copy Markdown
Contributor Author

/merge

@rapids-bot rapids-bot Bot merged commit 13ab5f6 into NVIDIA:main Jun 11, 2026
98 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

improvement Improves an existing functionality non-breaking Introduces a non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants